Increasing the demand reduction effectiveness of an energy storage system

ABSTRACT

In various embodiments, a hedge mode plugin increases the ability of an energy storage system to reduce the demand charges associated with purchasing electricity from a utility. A utility measurement interval (UMI) is divided into a pre-discharge phase and a subsequent compensatory charge phase. During the pre-discharge phase, the hedge mode plugin causes an energy storage device to discharge. At the beginning of the compensatory charge phase, the hedge mode plugin computes time-indexed charge values based on the total amount of energy that the energy storage device discharged during the pre-discharge phase. The hedge mode plugin then causes the energy storage device to charge based on at least one of the charge values. By systematically pre-discharging and re-charging the energy device, the hedge mode plugin optimizes the demand reduction effectiveness of the energy storage system during each UMI while stabilizing the state-of-charge of the energy storage device across multiple UMIs.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Patent Application Ser. No. 62/336,517 and filed on May 13, 2016. The subject matter of this related application is herein incorporated by reference.

BACKGROUND OF THE INVENTION Field of the Invention

Embodiments of the present invention generally relate to energy storage systems and, more specifically, to increasing the demand reduction effectiveness of energy storage systems.

Description of the Related Art

As is well-known, utility companies typically generate electricity on-demand. Because utility companies do not store electricity for later use by customers, utility companies incur steep costs to deploy and maintain enough equipment to satisfy customer demand during demand peaks. Consequently, utility companies typically charge relatively large customers (e.g., commercial or industrial customers) an additional “demand” charge during these demand peaks. To determine the demand charge, a utility company tracks the average kilowatt (kW) demand of a customer over the course of a period of time, referred to herein as a “utility measure interval” (UMI). The utility company then sets the demand charge for the customer based on the highest average kW demand of all the UMIs included in a billing cycle.

As is well-understood, such demand charges can lead to significantly higher electricity costs for customers. For example, for a typical commercial or industrial customer, the demand charge may be between 30 and 70 percent of the total cost of energy over a billing cycle. To reduce the cost of electricity purchased from utility companies, some customers install energy storage systems on their premises that store energy in energy storage devices, such as large-scale batteries. Generally speaking, an energy storage system includes a system controller that attempts to discharge the energy storage device(s) when customer load is high and then charge energy storage device(s) when customer load is low. In so doing, a conventional system controller is configured to select and enforce one or more set-points. At any given time, the system controller attempts to configure the energy storage device(s) to discharge electrical energy at a rate that prevents the net load measured by the utility company from exceeding the relevant set-point during a particular UMI. In this fashion, the system controller attempts to constrain average kW demand of each UMI to a level that correlates with an acceptable demand charge.

One limitation of conventional system controllers is that they typically are unable to effectively manage average kW demand during a UMI when a “power limited event” occurs. A power limited event is when the customer load exceeds the capability of the energy storage device(s) to prevent the net load from exceeding the set-point during a given UMI. During UMIs that include power limited events, conventional system controllers may be unable to maintain the average kW demand of the UMI below the desired level. Such situations can occur when there is not enough time remaining in the UMI subsequent to the power limited event to discharge the energy storage device(s) long enough to bring the average kW demand back down to the set-point level. Thus, power limited events can oftentimes lead to unacceptably high demand charges that significantly impact the total cost of energy during a billing cycle.

For example, suppose that the power rating of an energy storage device is 100 kW and that the set-point during a UMI is 50 KW. Further, suppose that the customer load is 40 kW during the first 10 minutes of a 15 minute UMI and then 200 kW during the final 5 minutes of the UMI. During the first 10 minutes, because the customer load is below the set-point, a conventional storage controller does not discharge the energy storage device. During the final 5 minutes, a power limited event exists. Upon detecting the power limited event, the conventional storage controller immediately discharges all of the electricity stored in the energy storage device and requests the remaining required electrical energy (here, 100 kW) from the utility company. However, because there is only 5 minutes remaining in the UMI, there is not enough time left in the UMI to discharge the energy storage device long enough to limit the maximum average kW demand as measured by the utility company to 50 kW. More specifically, the maximum average demand for the UMI is 60 kW, and the demand charge associated with the billing cycle may increase dramatically.

As the foregoing illustrates, what is needed in the art are techniques for controlling energy storage devices to more effectively manage power limiting events.

SUMMARY OF THE INVENTION

Various embodiments of the present invention include a computer-implemented method for controlling an energy storage device to manage power limited events. The method includes computing multiple discharge values; during a pre-discharge phase of a utility measurement interval, causing the energy storage device to discharge electrical energy based on at least one discharge value included in the multiple discharge values; at a predetermined time that separates the pre-discharge phase from a compensatory charge phase of the utility measurement interval, computing multiple charge values based on a total amount of electrical energy that is discharged from the energy storage device during the pre-discharge phase; and during the compensatory charge phase, causing the energy storage device to perform a charging operation based on at least one charge value included in the multiple charge values.

Various embodiments of the present invention include a computer-implemented method of controlling discharge and charge cycles for an energy storage device. The method includes determining that a first time associated with a first command lies within a pre-discharge phase of a utility measurement interval; producing a second command based on at least one of the first command and a discharge guideline; causing the energy storage device to discharge based on the second command; determining that a second time associated with a third command lies within a compensatory charge phase of the utility measurement interval; producing a fourth command based on at least one of the third command and a charge guideline; and causing the energy storage device to charge or discharge based on the fourth command.

At least one advantage of the disclosed techniques is that the operation of the energy storage device is optimized to reduce demand charges. Notably, preemptively discharging the energy storage device during a first portion of the utility measurement interval enables the energy storage system to effectively mitigate a power limited event over the entire utility measurement interval irrespective of when the power limited event occurs, Consequently, the demand charges for the entire billing cycle may be reduced.

BRIEF DESCRIPTION OF THE DRAWINGS

So that the manner in which the above recited features of the present invention can be understood in detail, a more particular description of the invention, briefly summarized above, may be had by reference to embodiments, some of which are illustrated in the appended drawings. It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments.

FIG. 1 is a conceptual illustration of multiple distributed energy storage systems that are positioned at different electric load locations and coupled to an electric grid, according to various embodiments of the present invention;

FIG. 2 is a schematic illustration of one of the distributed energy storage systems of FIG. 1, according to various embodiments of the present invention;

FIG. 3 is a more detailed illustration of the system controller of FIG. 2, according to various embodiments of the present invention;

FIG. 4 is a more detailed illustration of the hedge mode plugin of FIG. 3, according to various embodiments of the present invention;

FIG. 5A illustrates discharge and charge guidelines that the hedge mode plugin of FIG. 4 may be configured to implement, according to various embodiments of the present invention;

FIG. 5B illustrates discharge and charge guidelines that the hedge mode plugin of FIG. 4 may be configured to implement, according to other various embodiments of the present invention;

FIG. 5C illustrates discharge and charge guidelines that the hedge mode plugin of FIG. 4 may be configured to implement, according to yet other various embodiments of the present invention;

FIG. 6 illustrates an example of the optimized discharge and charge commands that the hedge mode plugin of FIG. 4 may be configured to generate, according to various embodiments of the present invention;

FIG. 7 is a flow diagram of method steps for controlling an energy storage device to manage power limited events, according to various embodiments of the present invention; and

FIG. 8 is a flow diagram of method steps for controlling the discharge and charge cycles of an energy storage device, according to various embodiments of the present invention.

DETAILED DESCRIPTION

In the following description, numerous specific details are set forth to provide a more thorough understanding of the present invention. However, it will be apparent to one of skilled in the art that the present invention may be practiced without one or more of these specific details. To facilitate understanding, identical reference numerals have been used, where possible, to designate identical elements that are common to the figures. It is contemplated that elements disclosed in one embodiment may be beneficially utilized on other embodiments without specific recitation. The drawings referred to here should not be understood as being drawn to scale unless specifically noted. Also, the drawings are often simplified and details or components omitted for clarity of presentation and explanation.

Overview of Distributed Energy Storage Systems

FIG. 1 is a conceptual illustration of multiple distributed energy storage systems 103 that are positioned at different electric load locations 104 and coupled to an electric grid 102, according to various embodiments of the present invention. The distributed energy storage systems 103 are installed either behind a utility's electric meter at electric load locations, such as commercial electric load locations, residential sites and/or commercial solar/wind production sites. The term commercial electric load location as used herein, generally includes a broad range of commercial and industrial electric users, such as hotels, office buildings, and restaurants, or installed on utility controlled sites including but not limited to substations, distribution or transmission lines, and capacitor banks. In general, each of the distributed energy storage systems 103 strategically stores energy in and releases energy from one or more energy storage devices located at the electric load location 104 to reduce the total cost of purchasing energy from the electric grid 102 for the electric load location 104.

The electric grid 102 will generally be connected to the electric load locations 104 and the power plants 102A that are adapted to deliver electric power to the electric grid 102. In general, an electric utility will help provide and/or deliver power to each of the electric load locations 104 in a region of the electric grid 102. In some cases, the tariff structure, such as electric rates and billing schedules, for different electric utilities may vary from region to region within the electric grid 102. The distributed energy storage systems 103, also referred to as advanced energy systems (AESs), are coupled to the electric grid 102. Consequently, the distributed energy storage systems 103 may be in communication with other distributed energy storage systems 103 distributed along the electric grid 102 and may be in communication with an operations center 109.

The operations center 109 may include software and hardware components that are configured to store, retrieve operation information from, and transmit operation information to each distributed energy storage system 103 to control the power fluctuations and power delivery at each respective electric load location 104. In some cases, the operation information may include environmental data, control information, device commands and other useful information. The distributed energy storage systems 103 in the different regions of the electric grid 102 are generally able to account for differences in power pricing (including energy tariffs and real-time energy pricing), differences in weather, differences in the health of the electric grid 102, and other external and internal electric power usage differences to provide an optimized and/or customized control of the power at each of the electric load locations 104. Embodiments of the invention use a control method employed in the distributed energy storage systems 103 located behind a utility's electric meter (not shown in FIG. 1) typically located at, but not limited to, medium and large commercial and industrial locations.

FIG. 2 is a schematic illustration of one of the distributed energy storage systems 103 of FIG. 1, according to various embodiments of the present invention. The distributed energy storage system 103 is disposed at the electric load location 104 and includes, without limitation, a power monitor 230, one or more power controllers 222, and a system controller 210. Each of the power controllers 222 is coupled to an energy storage device 224. The electric load location 104 typically contains an electric meter 201 that is coupled to the electric grid 102 and is used by the utility to track electricity usage at the electric load location 104. The electric meter 201 is configured to provide power to one or more electric loads 241 that are connected to a breaker panel 240. For example, the three electric loads 241A-241C are shown in FIG. 2.

In one example, the electric meter 201 is configured to distribute power to the electric loads 241A-241C along one or more phases that are each coupled to the breaker panel 240 along a conducting element 235. In general, an electric load can be any device that uses electrical energy at an electric load location 104, and may include, for example, heating, ventilation, air conditioning (HVAC) equipment, lighting, and other electronics units that receive power from the electric grid 102. Each of the electric loads 241A-241C may separately draw power through each of the conducting elements 235. The amount of power passing through the conducting element 235 is monitored by a sensor 234 disposed in the power monitor 230. The power monitor 230 will typically include one or more sensors 234 (e.g., voltage sensor and/or current sensor) that are configured to monitor and deliver a signal to a power monitor controller 232. The power monitor controller 232 is configured to process and deliver data relating to the time varying current (A), voltage (V) and/or power (W) delivered on the one or more phases to the system controller 210, and in some cases time varying current, voltage and/or power data to the operations center 109.

To control fluctuation in power and/or power level being drawn by each of the electric loads 241 in the electric load location 104, the distributed energy storage system 103 typically includes one or more power controllers 222. Each of the power controllers 222 is configured to control the delivery of power to the electric grid 102 or absorption of power received from the electric grid 102 by use of the energy storage device 224 that is connected to the power controller 222. In one embodiment, the power controllers 222 include one or more bidirectional power converters (not shown) that are capable of quickly converting stored DC energy found in the energy storage device 224 to the grid AC electricity and grid AC electricity back to DC energy that is stored in the energy storage device 224.

The distributed energy storage systems 103 can operate autonomously, but generally may be in frequent contact with a cloud-based optimization engine (not shown) that may be located in the operations center 109. The optimization engine can take in various data and develop optimal energy control solutions which are passed back down to one or more of the distributed energy storage systems 103. Each of the distributed energy storage systems 103 includes a system controller 210 that works together with the optimization engine to control the energy storage device 224 to implement energy control solutions within the distributed energy storage system 103. In many cases, the primary goal of the distributed energy storage system 103 is to determine and enforce “set-point(s).”

Each set-point specifies a desired upper limit for the power actually delivered to the electrical load location 104 from the electric grid 102. Each set-point is typically specified in kilowatts (kW). The system controller 210 may alter the set-point at different times of the day. In operation, the system controller 210 attempts to configure the energy storage device 224 to provide electrical energy to the electrical load location 104 at whatever rate that prevents the net load of the electrical load location 104 from exceeding the set-point. As referred to herein, the load is the time varying instantaneous power usage at the electrical load location 104. By contrast, the net load is a time varying quantity of electrical power that is actually delivered to the electrical load location 104 from the electric grid 102. Thus, at any point in time, the net load is equal to the load at the electrical load location 104 minus any power provided by the energy storage device 224.

In general, the system controller 210 controls the net load by discharging the energy stored in the energy storage device 224, such as devices that may include DC batteries, through the bidirectional energy converter during peak demand events. In some embodiments, the system controller 210 also manages the battery state-of-charge by recharging energy storage device 224 during periods of lower demand. The state-of-charge represents the amount of energy stored in the storage medium of energy storage device 224 (e.g., batteries), which can be converted to electrical energy at any time of day, for example during a peak demand event. The distributed energy storage system 103 is generally intelligent enough to ensure that there is adequate energy stored in the energy storage device 224 to be able to offset at least a portion of high-demand events.

In general, the system controller 210 controls various system functions and support hardware and monitors the processes being controlled by and within the distributed energy storage system 103. The system controller 210 includes a plurality of software based controlling elements that are adapted to synchronize and control the transfer of power between the conducting element 235 that is coupled to the electric grid 102. As shown, the software based controlling elements found in the system controller 210 include, without limitation, a solution manager 202, a set-point controller 204, a run-time controller 206, and an offset controller 208. The system controller 210 is configured to receive information from the power monitor 230 via a wired or wireless link 209 and from the operations center 109 via a wired or wireless link 109A. The system controller 210 is also configured to receive information from and deliver power commands to the power controllers 222 via a wired or wireless communication link 223A

FIG. 3 is a more detailed illustration of the system controller 210 of FIG. 2, according to various embodiments of the present invention. As shown, the system controller 210 includes, without limitation, a processor 320 and a memory 310. In some embodiments, the system controller 210 may also include support circuits (or I/O) (not shown) such as cache, power supplies, clock circuits, input/output circuitry, subsystems, and the like. The processor 320 may be any instruction execution system, apparatus, or device capable of executing instructions. For example, the processor 320 could comprise a central processing unit (CPU), a controller, a microcontroller, a state machine, or any combination thereof.

The memory 310 stores content, such as software applications and data, for use by the processor 320. As shown, the memory 320 includes, without limitation, the solution manager 220, the set-point point controller 204, the run-time controller 206, and the offset controller 208. The memory 310 may be one or more of a readily available memory, such as random access memory (RAM), read only memory (ROM), floppy disk, hard disk, or any other form of digital storage, local or remote. In some embodiments, a storage (not shown) may supplement or replace the memory 310. The storage may include any number and type of external memories that are accessible to the processor 320. For example, and without limitation, the storage may include a Secure Digital Card, an external Flash memory, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

In operation, the system controller 210 exchanges information with the power controller 222, the power monitor 230, and the operations center 109. In particular, the system controller 210 receives a state-of-charge 302, an energy cost 304, and a load 306. The solution manager 220, the set-point point controller 204, the run-time controller 206, and the offset controller 208 process the received information and generate final power commands 398. Finally, the offset controller 208 transmits the final power commands 398 to the power controllers 222.

The state-of-charge 302 represents the amount of energy stored in the storage medium of the energy storage device 224 (e.g., batteries), which can be converted to electrical energy at any time of day, for example during a peak demand event. The energy cost 304 may reflect the cost of purchasing energy from the electric grid 102 in an technically feasible fashion. For example, the energy cost 304 may specify a demand cost and/or consumption cost per kW assessed by the electrical company based on the time of day. The load 306 is the sum of the power levels drawn by the electric loads 241 in the electrical load location 104.

In alternate embodiments, the system controller 120 may receive any amount and type of additional data to determine the final power commands 398. For example, the system controller 120 may receive a load history associated with the electrical loads 241. Further, the system controller 120 may receive input information from any technically feasible source. For example, in some embodiments, the system controller 120 may receive input from the optimization engine (not shown) that specifies optimal energy control solutions involving one or more of the distributed energy storage systems 103.

The solution manager 202 exists on the local premise and is primarily responsible for developing optimal energy control solutions and transmitting operating parameters 332 to the set-point controller 204 and/or the offset controller 208. In one embodiment, the solution manager 202 receives demand threshold control instructions (e.g., demand set-point curves) and battery state-of-charge curves from the optimization engine and then determines at what time(s) of day the set-point controller 204 changes a set-point 334 that manages the net load at the electrical load location 104. For example, suppose that during a period of low demand charges (e.g., energy cost is low), the solution manager 202 receives new information that a high demand charge period (e.g., energy cost is high) is approaching. In such a scenario, the solution manager 202 sets the operating parameters 332 to reflect a new set-point 334 to which the set-point controller 204 should attempt to hold the net load at the electrical load location 104. The solution manager 202 then transmits the operating parameters 332 to the set-point controller 204.

The set-point controller 204 manages the set-point 334 for each instant in time based on the operating parameters 332 received from the solution manager 202. The set-points 334 attempt to ensure that the system maintains enough energy reserve in the energy storage device 224 to effectively manage the net load at the electric load location 104 over a particular time period, such as a day or part of a day. The run-time controller 206 receives the set-points 334 and generates set-point power commands 336 that control the charge or discharge of energy to or from the energy storage device 224 via the bi-directional power converter.

More specifically, for a particular time, the run-time controller 206 receives the set-point 334, the load 306, and other gating parameters (such as time of day) and computes the set-point power command 336. For example, in some embodiments, the run-time controller 336 subtracts the load 306 from the set-point 334 to determine a power value that the run-time controller 336 specifies in the set-point power command 336. If the power value is positive, then the set-point power command 336 configures the energy storage device 224 to charge (i.e., store energy). By contrast, if the power value is negative, then the set-point power command 336 configures the energy storage device 224 to discharge (i.e., release energy). In general, the set-point power commands 338 are designed to configure the energy storage device 224 to maintain the net load at the electrical load location 104 at or below the set-point 334.

The offset controller 208 is used as a higher-level system override of the control provided by the system controller 210. The offset controller 208 is configured to selectively modify the charge or discharge power command 338 to produce a final power command 398 that the offset controller 208 transmits to the power controller 222. More specifically, the offset controller 208 receives the power command 338 and executes one or more plugins that each generates an optimized power command. The offset controller 208 manages the various plugins, determines which of the plugins is active at any instance in time, and generates the final power commands 398 based on the optimized power commands. In some embodiments, the offset controller 208 includes an enable and a priority setting for each of the plugins. In such embodiments, the offset controller 208 selects one of the plugins based on the enables and the priority settings and then sets the final power command 398 to the optimized power command generated by the selected plugin.

To ensure that the plugins do not perturb the algorithms implemented in the set-point controller 204 and the optimization engine, the offset controller 208 is also configured to modify the telemetry information. An example of such telemetry information is the data received from the power monitors 230. For example, suppose that the offset controller 208 receives the set-point power command 336 that specifies a discharge of 100 kW from the energy storage device 224. However, suppose that the offset controller 208 generates a corresponding final power command 398 that specifies a discharge of 150 kW of from the energy storage device 224. In such a scenario, the offset controller 208 would add 50 kW of power back to the telemetry information received from the power monitors 230 so that the set-point controller 204 and the optimization engine would not see a deviation from the predicted load.

The plugins included in the offset controller 208 may target any number and type of situations that may not be handled optimally by the set-point power commands 336. One such situation is optimizing demand charges in the presence of power limited events. To determine the demand charge, a utility company tracks the average kilowatt (kW) load at the electrical load location 104 measured within a time interval referred to herein as a “utility measure interval” (UMI). The utility company then sets the demand charge for the electrical load location 104 based on the highest average kW demand of all the UMIs included in a billing cycle. As is well-known, such demand charges can lead to significantly higher electricity costs for the electrical load location 104. For example, for a typical commercial or industrial electrical load location 104, the demand charge may be between 30 and 70 percent of the total cost of electricity purchased from the utility company during the billing cycle.

A power limited event occurs when the load 306 at the electrical load location 104 exceeds the capability of the energy storage device(s) 224 to prevent the net load from exceeding the set-point during a given UMI. For example, if the power rating (i.e., maximum capacity) of the energy storage device 224 is 100 kW, the set-point 334 is 50 kW, and the load 306 is 200 kW, then a power limited event occurs. Throughout the UMI, the set-point power commands 336 attempt to maintain the net load of the electrical load location 204 below the set-point 334. In particular, during the power limited event, the run-time controller 306 typically generates the set-point power commands 336 that discharge the energy storage device 224 at the maximum power rating. However, during the remainder of the UMI, the set-point power commands 336 may not configure the energy storage device 224 to discharge at the maximum power rating. If the energy storage device 224 does not discharge at the maximum power rating for the entire UMI, then the average net load at the electrical load location 204 associated with the UMI is unnecessarily high. Consequently, the electrical energy cost for the electrical load location 204 may be unacceptable high.

Reducing Demand Charges

To reduce the demand charges for the electrical load location 104, the offset controller 208 includes a hedge mode plugin 340. As shown, the hedge mode plugin 340 is activated via a hedge mode enable 342, receives the set-point power commands 336 from the run-time controller 206, and generates demand optimized power commands 346. If the hedge mode enable 342 is active and the priority associated with the hedge mode plugin 340 is higher than the priorities associated with any other plugins, then the offset controller 280 sets the final power commands 398 equal to the demand-optimized power commands 346. In alternate embodiments, the hedge mode plugin 340 may receive any commands from any sources instead of receiving the set-point power commands 336 from the run-time controller 206.

FIG. 4 is a more detailed illustration of the hedge mode plugin 340 of FIG. 3, according to various embodiments of the present invention. As shown, the hedge mode plugin 340 includes, without limitation, a discharge guideline 442, a charge quota 444, a hedge mode constraint 450, a charge guideline 448, and a demand optimization engine 480. As also shown, the hedge mode plugin 340 receives the set-point power commands 336, a utility measurement interval (UMI) midpoint 446, and a maximum discharge power 420. The hedge mode plugin 340 generates the demand-optimized power commands 346.

For explanatory purposes only, the set-point power commands 336, the demand-optimized power commands 346, and the final power commands 346 may be referred to herein as “power commands.” Each power command specifies a power value and is associated with a specific time. If the power command specifies a power value that is negative, then the power command configures the energy storage device 224 to discharge power. Such a power command is also referred to herein as a “discharge power command” and the associated power value is also referred to herein as a “discharge value.” By contrast, if a power command specifies a power value that is positive, then the power command configures the energy storage device 224 to store power. Such a power command is also referred to herein as a “charge power command” and the associated power value is also referred to herein as a “charge value.” The time that is associated with the power command is the time at which the energy storage device 224 is configured to execute the power command.

To increase the ability of the energy storage device 224 to reduce the average demand associated with each UMI, the hedge mode plugin 340 computes an opportunistic behavior that varies across the UMI. The demand optimization engine 480 determines whether to override each of the set-point power commands 336 based on this opportunistic behavior. The opportunistic behavior implements a two phase approach to managing the energy storage device 224 during each UMI. The two phases include a preemptive pre-discharge phase and a subsequent compensatory charge phase.

The opportunistic behavior of the hedge mode plugin 340 during the pre-discharge phase is to preemptively discharge the energy storage device 224. Accordingly, during the pre-discharge phase, the opportunistic behavior of the hedge mode plugin 340 reduces the net load of the electrical load location 104 and reduces the average demand charge associated with the UMI. During the compensatory charge phase, the opportunistic behavior of the hedge mode plugin 340 is to recharge the energy storage device 224. More specifically, the hedge mode plugin 340 charges the energy storage device 224 to maintain a net balance charge of zero (including any inefficiency loss) within the UMI. To ensure that the hedge mode plugin 340 maintains a net balance charge of zero within the UMI, the hedge mode plugin 340 includes the charge quota 444 and the hedge mode constraint 450. During the pre-discharge phase, the hedge mode plugin 340 tracks the magnitude of the energy discharged via the charge quota 444. After the pre-discharge phase, the hedge mode plugin configures the opportunistic behavior during the compensatory charge phase based on the hedge mode constraint 450.

As shown, the hedge mode constraint 450 constrains the amount of energy that is stored in the energy storage device 224 during the compensatory charge phase to be equal or greater than the sum of the charge quota 444 and any inefficiency loss associated with the energy storage device 224. In this fashion, the opportunistic behavior of the hedge mode plugin 340 maintains a consistent state-of-charge 302 for the energy storage device 224 at the beginning of each UMI. Consequently, the opportunistic behavior of the hedge mode plugin 340 ensures the ability of the energy storage device 224 to reduce demand costs associated with multiple UMIs.

In alternate embodiments, the hedge mode constraint 450 may be computed in a different manner. For example, in some embodiments, the inefficiency loss is expressed as a percentage. In such embodiments, the hedge mode constraint 450 could constrain the amount of energy that is stored in the energy storage device 224 during the compensatory charge phase to be equal to or greater than the sum of the charge quota 444 divided by the inefficiency loss percentage.

In operation, the hedge mode plugin 340 receives the utility measurement interval (UMI) midpoint 446 and the maximum discharge power 420. The UMI midpoint 446 bisects the UMI with respect to time into a first half that is the pre-discharge phase and a second half that is the subsequent compensatory charge phase. In alternate embodiments, the UMI midpoint 446 may be defined in any technically feasible fashion based on a UMI time duration (not shown in FIG. 4) that is defined by the utility company associated with the electric grid 102.

The maximum discharge power 420 may be received from any element included the system controller 210 and specifies the amount of power that is allocated to the hedge mode plugin 340 for increasing demand reduction effectiveness. The maximum discharge power 420 may be determined based on any number of system characteristics and/or any number of optimization criteria in any technically feasible fashion. For example, in some embodiments, the solution manager 202 computes the maximum discharge power 420 based on the state-of-charge 302 of the energy storage device 224 and a time-dependent consumption cost. In other embodiments, the solution manager 202 may set the maximum discharge power 420 to a relatively low value to reduce the overall lifetime c-rate associated with the energy storage system 224. The c-rate measures the rate at which the energy storage system 224 may discharge relative to the maximum capacity of the energy storage system 224.

At the beginning of the pre-discharge phase, the hedge mode plugin 340 computes the discharge guideline 442 that defines the opportunistic behavior of the hedge mode plugin 340 during the pre-discharge phase. The discharge guideline 442 includes a set of negative power values (i.e., discharge values) that are indexed by “time ticks” included in the pre-discharge phase. As referred to herein, a time tick is a unit of time that is used by the hedge mode plugin 340 to discretize time. For each time tick, the time is specified relative to the beginning of the pre-discharge phase. For instance, if the duration between time ticks is 1 second, then the time associated with the first time tick in the pre-discharge phase is 1 second, the time associated with the second time tick in the pre-discharge phase is 2 seconds, and so forth.

The hedge mode plugin 340 computes the negative power values included in the discharge guideline 442 based on a discharge curve and the time ticks. The discharge curve may be any function of time that defines negative power values that are consistent with preemptively discharging the energy storage device 224. Some examples of discharge curves are a “box” function, a linear function, and a spline curve (e.g., a Bezier curve) function. In some embodiments, the hedge mode plugin 340 parameterizes the discharge curve based on the duration of the pre-discharge phase, the maximum discharge power 420 and/or any other technically feasible parameters.

For example, in some embodiments, the hedge mode plugin 320 parameterizes a box function to specify negative power values that are equal to the maximum discharge power 420 for a time interval that is limited by the hedge mode constraint 450. Note that the inefficiency loss is typically greater than zero and the maximum charge power typically equals the magnitude of the maximum discharge power 420. Consequently, complying with the hedge mode constraint 450 restricts the time interval of the “box” specified by box function to be shorter than the duration of the pre-discharge phase.

Each parameterized discharge curve may represent a different level of aggressiveness with respect to preemptively discharging the energy storage device 224. For example, a parameterized discharge curve that specifies the maximum discharge power 420 for the majority of the pre-discharge phase is relatively aggressive. By contrast, a parameterized discharge curve based on a linear function that specifies the maximum discharge power 420 at the time tick zero and then negative power values that linearly decrease in magnitude throughout the pre-discharge phase is less aggressive.

For each time tick included in the pre-discharge phase, the hedge mode plugin 340 computes the power value included in the discharge guideline 442 based on the parameterized discharge curve. After pre-computing the discharge guideline 442 and prior to the pre-discharge phase, the hedge mode plugin 340 initializes the charge quota 444 to zero. At any given time, the charge quota 444 represents the total energy discharged from the energy storage device 224 based on the final power commands 398 generated by the offset controller 208 during the pre-discharge phase.

Subsequently, during the pre-discharge phase, the demand optimization engine 480 receives the set-point power command 336 and determines whether to override the set-point power command 336. If the set-point power command 336 is a charge command, then the demand optimization engine 480 overrides the set-point power command 336. If the set-point power command 336 is a discharge command, then the demand optimization engine 480 compares the power value specified by the set-point power command 336 to the power value included in the discharge guideline 442 and associated with the current time tick.

If the magnitude (i.e., absolute value) of the power value specified by the set-point power command 336 is less than the magnitude of the power value included in the discharge guideline 442 and associated with the current time tick, then the demand optimization engine 480 overrides the set-point power command 336. To override the set-point power command 336, the demand optimization engine 480 generates the demand-optimized power command 346 that specifies the power value included in the discharge guideline 442 and associated with the current time tick. However, if the magnitude of the power value specified by the set-point power command 336 is greater than or equal to the magnitude of the power value included in the discharge guideline 442 and associated with the current time tick, then the demand optimization engine 480 does not override the set-point power command 336. Instead, the demand optimization engine 480 sets the demand-optimized power command 346 equal to the set-point power command 336. In this fashion, the demand optimization engine 480 prioritizes the set-point power command 336 during times of relatively high demand.

After the demand optimization engine 480 produces the demand-optimized power command 346, the offset controller 208 generates the final power command 398. The offset controller 208 may generate the final power command 398 in any technically feasible fashion based on any number of priorities and enabled plugins. The hedge mode plugin 340 then adds the magnitude of the energy discharged from the energy storage device 224 during the time tick to the charge quota 444. The hedge mode plugin 340 computes the energy discharged during the time tick based on the final power command 398 generated by the offset controller 208. The demand optimization engine 480 continues to produce the demand-optimized power commands 338 based on the discharge guideline 442 and the hedge mode plugin 340 continues to update the charge quota 444 until the time reaches the UMI midpoint 446.

Upon reaching the UMI midpoint 446 and before beginning the compensatory charge phase, the hedge mode plugin 340 computes the charge guideline 448 based on the hedge mode constraint 450. The charge guideline 448 includes a positive power value for each of the time ticks included in the compensatory charge interval. The hedge mode plugin 340 may implement any type of charge guideline 448 in any technically feasible fashion that is consistent with the hedge mode constraint 450. In some embodiments, the hedge mode plugin 340 parameterizes a charge curve based on one or more parameters and then computes the power values for the charge guideline 448 based on the resulting parameterized curve.

For example, in some embodiments, the hedge mode plugin 340 parameterizes a Bezier curve function based on the hedge mode constraint 450. In such embodiments, the hedge mode plugin 340 initially sets a curvature vector to a first set of values that specify a relatively unaggressive curve to generate a potential charge curve. The hedge mode plugin 340 then integrates the potential charge curve over the time duration of the compensatory charge phase (e.g., half the UMI time duration). The result of this integration is an amount of energy that, if the hedge mode plugin 340 were to implement the potential charge curve, would be stored in the energy storage device 224.

If the compensatory energy is greater than or equal to the sum of the charge quota 444 and the total inefficiency loss over the UMI, then the hedge mode plugin 340 sets the charge guideline 444 equal to the potential charge curve. If the compensatory energy is less than the sum of the charge quota 444 and the total inefficiency loss over the UMI 444, then the hedge mode plugin sets the curvature vector to another set of values that specifies a more aggressive curve to generate a new potential charge curve. The hedge mode plugin 340 repeats the process of increasing the aggressiveness of the potential charge curve until the compensatory energy is greater than or equal to the sum of the charge quota 444 and the inefficiency loss. The hedge mode plugin 340 then sets the parameterized charge curve equal to this potential charge curve.

For each time tick associated with the charge guideline 448, the hedge mode plugin 340 computes the guideline power value based on the parameterized charge curve and the time tick. If the hedge mode plugin 340 is unable to compute a parameterized charge curve that complies with the hedge mode constraint 450, then the hedge mode plugin 340 may implement any type of default behavior. For example, the hedge mode plugin 340 may set each of the power values included in the charge guideline 448 equal to the magnitude of the maximum discharge power 420.

Subsequently, during the compensatory charge phase, the demand optimization engine 480 receives the set-point power command 336 and determines whether to override the set-point power command 336. The demand optimization engine 480 compares the power value specified by the set-point power command 336 to the power value included in the charge guideline 448 and associated with the current time tick. If the power value specified by the set-point power command 336 is greater than the power value included in the charge guideline 448 and associated with the current time tick, then the demand optimization engine 480 overrides the set-point power command 336. More precisely, the demand optimization engine 480 generates the demand-optimized power command 346 that specifies the power value included in the charge guideline 444 and associated with the current time tick.

If, however, the power value specified by the set-point power command 336 is less than or equal to the power value included in the charge guideline 448 and associated with the current time tick, then the demand optimization engine 480 does not override the set-point power command 336. Instead, the demand optimization engine 480 sets the demand-optimized power command 346 equal to the set-point power command 336. Notably, because discharge commands specify negative power values, if the set-point power command 336 is a discharge command, then the demand optimization engine 480 priorities the set-point power command 336. In this fashion, the demand optimization engine 480 priorities the set-point power command 336 over the opportunistic behavior of the hedge mode plugin 340 during times of relatively high load 306, such as power limited events.

After the demand optimization engine 480 produces the demand-optimized power command 346, the offset controller 208 generates the final power command 398. The offset controller 208 may generate the final power command 398 in any technically feasible fashion based on any number of priorities and enabled plugins. The demand optimization engine 480 continues to produce the demand-optimized power commands 346 based on the charge guideline 448 for the remainder of the UMI.

As persons skilled in the art will recognize, there is a potential for a net loss of the balance of energy stored in the energy storage device 224 during each UMI. For example, if a power limited event occurs during the compensatory charge phase, then the amount of energy that is discharged from the energy storage device 224 during the pre-discharge phase may exceed the amount of energy that is stored in the energy storage device 224 during the compensatory charge phase. In various embodiments, the hedge mode plugin 340, the demand optimization engine 480, the offset controller 208, and/or the system controller 210 may implement any number of and type of algorithms to adapt to such circumstances. For example, the hedge mode plugin 340 may be configured to specify an opportunistic behavior that results in an increase in the balance of energy stored in the energy storage device 224 for one or more UMIs following a power limited event.

In various embodiments, the offset controller 208 may activate and deactivate the hedge mode plugin 340 via the hedge mode enable 342 at any point in time (including during a UMI) and based on any criteria. For example, in some embodiments, the offset controller 208 may enforce state-of-charge band limitations for the operation of the energy storage device 224. If the state-of-charge 302 of the energy storage device 224 does not lie within a predetermined range, then the offset controller 208 may deactivate the hedge mode plugin 340 during the pre-discharge phase, the compensatory charge phase, or the entire UMI.

The descriptions of the various embodiments have been presented for purposes of illustration, but are not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. For example, in some embodiments, the hedge mode plugin 340 may compute the power value at each time tick instead of pre-computing the discharge guideline 442 and/or the charge guideline 444. In other embodiments, the system controller 210 may not include the offset controller 208. In such embodiments, the system controller 210 may implement a pre-discharge phase and a compensatory charge phase and generate the final power commands 398 in any technically feasible fashion. As a general matter, various embodiments include any techniques and/or systems for controlling an average demand based on preemptively pre-discharging an energy storage device and subsequently recharging the energy storage device.

FIG. 5A illustrates the discharge guidelines 442 and the charge guidelines 448 that the hedge mode plugin 320 of FIG. 4 may be configured to implement, according to various embodiments of the present invention. As shown, “box” guidelines 504 include, without limitation, the discharge guideline 442 and the charge guideline 448. For explanatory purposes, a UMI time duration 510 is 15 minutes and the UMI midpoint 446 is 7.5 minutes. Consequently the pre-discharge phase spans from 0 minutes to 7.5 minutes and the compensatory charge phase spans from 7.5 minutes to 15 minutes.

To compute the discharge guideline 442, the hedge mode plugin 320 parameterizes a discharge “box” function via a constant discharge limit 522 and a discharge time 532. The box function is zero at all times except during a “box” time interval where the box function equals a constant value. The hedge mode plugin 320 sets the discharge power limit 522 equal to maximum discharge power 420. To enable the hedge mode plugin 320 to effectively compensate for the inefficiency loss associated with the energy storage device 422, the hedge mode plugin 320 sets the discharge time 532 equal to the length of the pre-discharge phase (7 minutes) minus a 1 minute “buffer.” As shown, the resulting discharge guideline 442 specifies the maximum discharge power 420 for 6 minutes and then zero for the remaining minute of the pre-discharge phase.

To compute the charge guideline 448, the hedge mode plugin 320 computes the charge quota 444 based on the area of the “box” included in the discharge guideline 442. The hedge mode plugin 320 then parameterizes a charge box function via a charge power limit 524 and a charge time 534. The hedge mode plugin 320 sets the charge power limit 524 to the magnitude of the maximum discharge power 420. The hedge mode plugin 320 then computes the charge time 534 based on the hedge mode constraint 450. Because of the inefficiency loss associated with the energy storage device, the hedge mode plugin 320 ensures that the area of the box included in the charge guideline 448 is greater than the area of the box included in the discharge guideline 442. As shown, the hedge mode plugin 320 sets the charge time 534 to 7 minutes. The resulting charge guideline 448 specifies zero for the first 0.5 minutes of the charge phase and then the magnitude of the maximum discharge power 420 for the next 6.5 minutes.

FIG. 5B illustrates the discharge guidelines 442 and the charge guidelines 448 that the hedge mode plugin 320 of FIG. 4 may be configured to implement, according to other various embodiments of the present invention. As shown, linear guidelines 506 include, without limitation, the discharge guideline 442 and the charge guideline 448. For explanatory purposes, the UMI time duration 510 is 15 minutes and the UMI midpoint 446 is 7.5 minutes. Consequently the pre-discharge phase spans from 0 minutes to 7.5 minutes and the compensatory charge phase spans from 7.5 minutes to 15 minutes.

To compute the discharge guideline 442, the hedge mode plugin 320 parameterizes a discharge linear function via the discharge power limit 522 and a discharge slope 542. The hedge mode plugin 320 sets the discharge power limit 522 equal to the maximum discharge power 420. The hedge mode plugin 320 sets the discharge slope 542 in any technically feasible fashion. For example, the hedge mode plugin 320 may set the discharge slope 542 to a predetermined value. As shown, the resulting discharge guideline 442 specifies the maximum discharge power 420 at the beginning of the pre-discharge phase (0 minutes). Throughout the remainder of the pre-discharge phase, the magnitude of the discharge guideline 442 decreases linearly based on the discharge slope 542. At the end of the pre-discharge phase, the discharge guideline 422 equals zero.

To compute the charge guideline 448, the hedge mode plugin 320 computes the charge quota 444 based on the area specified by the discharge guideline 442. The hedge mode plugin 320 then parameterizes a charge linear function via the charge power limit 524 and a charge slope 544. The hedge mode plugin 320 sets the charge power limit 524 to the magnitude of the maximum discharge power 420. The hedge mode plugin 320 then computes the charge slope 544 based on the hedge mode constraint 450. Because of the inefficiency loss associated with the energy storage device, the hedge mode plugin determines that charge slope 544 is greater than the discharge slope 542. As shown, the resulting charge guideline 448 is zero at the beginning of the compensatory charge phase (7.5 minutes) and increases linearly until the power value reaches the charge power limit 524. For the remainder of the compensatory power phase, the charge guideline 422 equals the charge power limit 524.

FIG. 5C illustrates the discharge guidelines 442 and the charge guidelines 448 that the hedge mode plugin 320 of FIG. 4 may be configured to implement, according to yet other various embodiments of the present invention. As shown, Bezier guideline 508 include, without limitation, the discharge guideline 442 and the charge guideline 448. The hedge mode plugin 320 computes the Bezier guidelines 508 based on Bezier curve functions 560:

$\begin{matrix} {q = \left\{ \begin{matrix} {{\frac{k_{t}}{{- 1} + {2\; k_{t}}} - \frac{\sqrt{t - {2\; k_{t}t} + {k_{t}^{2}t_{\max}}}}{\left( {{- 1} + {2\; k_{t}}} \right)\sqrt{t_{\max}}}},} & {{0 \leq k_{t} < 0.5},{0.5 < k_{t} \leq 1.0}} \\ {\frac{t}{t_{\max}},} & {k_{t} = 0.5} \end{matrix} \right.} & (1) \\ {p = {{2\left( {1 - k_{p}} \right)p_{\max}q} + {p_{\max}q^{2}} - {2\left( {1 - k_{p}} \right)p_{\max}q^{2}}}} & (2) \end{matrix}$ Where the parameters include:

-   -   k_(t) a curvature in time that is a first component of a         curvature vector     -   t_(max) half of the UMI time duration 510     -   t a dependent variable in time     -   k_(p) a curvature in power that is a second component of the         curvature vector     -   p_(max) the maximum discharge power 420

The hedge mode plugin 320 computes the discharge guideline 442 and the charge guideline 448 based on the Bezier curve functions 550 and composites the two guidelines into a smooth curve. First, the hedge mode plugin 320 parameterizes the Bezier curve function 550 based on a predetermined curvature vector, the duration of the pre-discharge phase, and the maximum discharge power 420 to generate the discharge guideline 442.

After the pre-charge phase is complete, the hedge mode plugin 320 iteratively parameterizes the Bezier curve functions 550 to generate the charge guideline 448. More specifically, the hedge mode plugin 320 parameterizes the Bezier curve functions 550 based on fixed parameters and variable parameters. The fixed parameters include the time duration of the compensatory charge phase and the maximum discharge power 420. The variable parameters include components of the curvature vector.

As described previously herein, the hedge mode plugin 320 iteratively parameterizes the Bezier curve functions 550 to generate potential charge curves that correspond to increasingly aggressive values for the components of the curvature vector. When the hedge mode plugin 320 determines that the potential charge curve satisfies the hedge mode constraint 450, the hedge mode plugin 320 selects the potential charge curve as the final parameterized curve. The hedge mode plugin 320 then reflects the final parameterized curve in time and power about the point 0.0 and offsets the final parameterized curve by the duration of the compensatory charge phase to generate the charge guideline 448. As shown, the discharge guideline 442 and the charge guideline 448 are asymmetric, allowing the hedge mode plugin 320 to fully compensate for any inefficiency loss associated with the energy storage device 224.

FIG. 6 illustrates an example of the optimized discharge and charge commands that the hedge mode plugin 320 of FIG. 4 may be configured to generate, according to various embodiments of the present invention. For explanatory purposes only, the hedge mode plugin 320 is configured to implement the linear guidelines 506 of FIG. 5B. As shown, the hedge mode plugin 320 parameterizes the linear guidelines 506 based on the discharge power limit 522 of −50 kW and the charge power limit 524 of 50 kW. The power rating of the energy storage device 224 is 50 kW.

The top graph specifies the load 306 (in kW) over a single UMI, and the bottom graph specifies the corresponding power values specified by the demand-optimized power commands 346. For explanatory purposes, the top graph also depicts the UMI midpoint 446 that separates the UMI into the initial pre-charge phase and the subsequent compensatory charge phase. During the pre-charge phase, the load 306 is zero except for a brief load spike 610. Accordingly, during the pre-charge phase, the power values specified by the demand-optimized power commands 346 follow the linear discharge guideline 442 except for the time corresponding to the load spike 610. During the load spike 610, the demand optimization engine 480 does not override the set-point power commands 336. Consequently, the power values specified by the demand-optimized power commands 346 exhibit a negative spike during the load spike 610. The negative spike reflects that the set-point power commands 336 configure the memory storage device 224 to release additional power to prevent the net load of the electrical load location 104 from exceeding the set-point 334.

During the charge phase, the load 306 is zero except for a power limited event 650. Accordingly, during the charge phase, the power values specified by the demand-optimized power commands 346 follow the linear charge guideline 448 except for the time corresponding to the power limited event 650. During the power limited event 650, the demand optimization engine 480 does not override the set-point power commands 336. Consequently, the power values specified by the demand-optimized power commands 346 exhibit a negative spike during the power limited event 650. The negative spike reflects that the set-point power commands 336 configure the memory storage device 224 to discharge at the maximum capacity of the memory storage device 224 in an attempt to prevent the net load of the electrical load location 104 from exceeding the set-point 334. The system controller 210 is unable to prevent the net load of the electrical load location from exceeding the set-point 334 during the power limited event 650. However, because the demand optimization engine 480 overrides the set-point power commands 336 during the majority of the pre-charge phase and causes the energy storage device 224 to preemptively discharge, the net load over the UMI is reduced.

FIG. 7 is a flow diagram of method steps for controlling an energy storage device to manage power limited events, according to various embodiments of the present invention. Although the method steps are described with reference to the systems of FIGS. 1-6, persons skilled in the art will understand that any system configured to implement the method steps, in any order, falls within the scope of the present invention. The context of FIG. 7 is that the hedge mode plugin 340 implements the method steps over each utility measurement interval (UMI) to manage power limited events as part of an overall management strategy that is designed to reduce costs associated with purchasing energy from the electric grid 102.

As shown, a method 700 begins at step 702, where the hedge mode plugin 340 receives the utility measurement interval (UMI) time duration 510 and the maximum discharge power 420. The maximum discharge power 420 may be received from any element included the system controller 210 and specifies the amount of power that is allocated to the hedge mode plugin 340 for increasing demand reduction effectiveness. In general, the maximum discharge power 420 may be determined based on any number of system characteristics and any number of optimization criteria in any technically feasible fashion. For example, in some embodiments, the solution manager 202 computes the maximum discharge power 420 based on the state-of-charge 302 of the energy storage device 224 and the time-dependent energy cost 304.

At step 704, the hedge mode plugin 340 divides the UMI into a pre-discharge phase and a subsequent compensatory charge phase. The hedge mode plugin 340 may divide the UMI in any technically feasible fashion. For example, in some embodiments, the hedge mode plugin 340 bisects the UMI with respect to time at the UMI midpoint 446. The first half of the UMI is the pre-discharge phase and the second half of the UMI is the subsequent compensatory charge phase. At step 706, the hedge mode plugin 340 computes the discharge guideline 442. For each time tick included in the pre-discharge phase, the discharge guideline 442 includes a negative power value based on a discharge curve. The hedge mode plugin 340 may implement any type of discharge guideline 442 based on any type of discharge curve in any technically feasible fashion.

For example, in some embodiments, the hedge mode plugin 340 computes each of the power values included in the discharge guideline 442 based on the Bezier curve functions 560. As described previously in FIG. 5, the hedge mode plugin 340 may parameterize the Bezier curve functions 560 based on a length (in time) of the pre-discharge phase, the maximum discharge power 422, and a curvature vector. For each time tick, the time is specified relative to the beginning of the pre-discharge phase. For instance, if the duration between time ticks is 1 second, then the time associated with the first time tick in the pre-discharge phase is 1 second, the time associated with the second time tick in the pre-discharge phase is 2 seconds, and so forth. The curvature vector specifies the aggressiveness of the discharge guideline 442 and may be determined in any technically feasible fashion. For example, in some embodiments, the curvature vector may be specified through a user interface or an application programming interface. In other embodiments, the curvature vector may be set to a default value.

At step 708, the hedge mode plugin 340 sets the charge quota 444 to zero. At step 710, the hedge mode plugin 340 performs power management operation(s) based on the discharge guideline 442 and the current time tick. The hedge mode plugin 340 may perform any number and type of power management operations designed to increase the demand reduction efficiency of the energy storage device 224 based on the discharge guideline 442. For example, in some embodiments, as described previously in FIG. 4, the hedge mode plugin 340 may selectively override the set-point power command 336 received from other components included in the system controller 210 to generate the demand-optimized power command 346. At step 712, the hedge mode plugin 340 adds the magnitude (i.e., absolute value) of the energy discharged from the energy storage device 224 during the time tick to the charge quota 444. In general, the hedge mode plugin 320 determines the energy discharged from the energy storage device 224 based on the final power commands 398 generated by the offset controller 208. In this fashion, the charge quota 444 tracks the total amount of energy discharged from the energy storage device 224 over the UMI as a positive amount of energy.

At step 714, the hedge mode plugin 340 receives the set-point power command 336. At step 716, the hedge mode plugin 350 determines whether the current time lies within the pre-discharge phase. If, at step 716, the hedge mode plugin 340 determines that the current time lies within the pre-discharge phase, then the method 700 returns to step 710, where the hedge mode plugin 340 performs power management operation(s) based on the set-point power command 336 and the discharge guideline 442. The hedge mode plugin 340 continues to cycle through steps 710-716, performing power management operations based on the set-point power command 336 and the discharge guideline 442 until the pre-discharge phase is complete.

If, however, at step 716, the hedge mode plugin 340 determines that the current time does not lie within the pre-discharge phase, then the method 700 proceeds to step 718. At step 718, the hedge mode plugin 340 computes the charge guideline 448 based on the charge quota 444 and an inefficiency loss associated with the energy storage device 224. More specifically, the hedge mode plugin 340 enforces the hedge mode constraint 450 that the total energy associated with the charge guideline 448 is greater than or equal to the sum of the charge quota 444 and the total inefficiency loss over the UMI. In this fashion, the hedge mode constraint 450 stabilizes the capacity resources (e.g., the state-of-charge 302) of the energy storage device 224 over multiple UMIs.

In general, the charge guideline 448 includes a positive power value for each of the time ticks included in the compensatory charge interval. The hedge mode plugin 340 may implement any type of charge guideline 448 based on any type of charge curve in any technically feasible fashion that is consistent with the hedge mode constraint 450. For example, in some embodiments, the hedge mode plugin 340 iteratively parameterizes the Bezier curve functions 560 based on the hedge mode constraint 450 and then computes the power values for the charge guideline 448 based on the resulting parameterized curve. In such embodiments, the hedge mode plugin 340 initially sets the curvature vector to a first set of values that specify a relatively unaggressive curve to generate a potential guideline. The hedge mode plugin 340 integrates the potential guideline to determine an amount of compensatory energy that, if the hedge mode plugin 340 were to implement the potential guideline, would be stored in the energy storage device 224.

If the compensatory energy is greater than or equal to the sum of the charge quota 444 and the total inefficiency loss over the UMI, then the hedge mode plugin 340 sets the charge guideline 448 equal to the potential guideline. If the compensatory energy is less than the sum of the charge quota 444 and the total inefficiency loss over the UMI, then the hedge mode plugin sets the curvature vector to another set of values that specifies a more aggressive curve to generate a new potential guideline. The hedge mode plugin 340 repeats the process of increasing the aggressiveness of the potential guideline until the compensatory energy is greater than or equal to the sum of the charge quota 444 and the inefficiency loss. The hedge mode plugin 340 then sets the charge guideline 448 based on this optimized potential guideline.

At step 720, for the remainder of the UMI, the hedge mode plugin 340 performs power management operations based on the set-point power commands 336 and the charge guideline 448. The hedge mode plugin 340 may perform any number and type of power management operations designed to increase the overall demand reduction efficiency of the energy storage device 224 based on the charge guideline 448. For example, in some embodiments, as described previously in FIG. 4, the hedge mode plugin 340 may selectively override the set-point power commands 336 received from other components included in the system controller 210 to generate the demand-optimized power commands 346. The method 700 then terminates.

FIG. 8 is a flow diagram of method steps for controlling the discharge and charge cycles of an energy storage device, according to various embodiments of the present invention. Although the method steps are described with reference to the systems of FIGS. 1-6, persons skilled in the art will understand that any system configured to implement the method steps, in any order, falls within the scope of the present invention. The context of FIG. 6 is that the hedge mode plugin 340 computes the discharge guideline 442 at the start of a utility measurement interval (UMI) and the charge guideline 448 at the UMI midpoint 446.

As shown, a method 800 beings at step 804, where the demand optimization engine 480 included in the hedge mode plugin 340 receives the set-point power command 336 from the run-time controller 206. In alternate embodiments, the demand optimization engine 480 may receive any default power command from any source included in the system controller 210. At step 806, the demand optimization engine 480 determines whether the current time lies within the pre-charge phase of the UMI 510 based on comparing the current time to the UMI midpoint 446. In alternate embodiments, the demand optimization engine 480 may determine whether the current time lies within the pre-charge phase of the UMI 510 in any technically feasible fashion.

If, at step 806, the demand optimization engine 480 determines that the current time is less than or equal to the UMI midpoint 446 (i.e., the current time lies within the pre-charge phase of the UMI 510), then the method 800 proceeds to step 808. At step 808, the demand optimization engine 480 determines whether the set-point power command 336 is a command to charge the energy storage device 224. The demand optimization engine 480 may determine whether the set-point power command 336 is a command to charge the energy storage device 224 in any technically feasible fashion. For example, if the power value specified by the set-point power command 336 is positive, then the demand optimization engine 480 may determine that the set-point power command 336 is a command to charge the energy storage device 224. If, at step 808, the demand optimization engine 480 determines that the set-point power command 336 is a command to charge the energy storage device 224, then the method proceeds to step 810. At step 810, the demand optimization engine 480 generates the demand-optimized power command 346 that specifies the power value included in the discharge guideline 442 and associated with the current time tick. As described previously herein, the current time tick is the discretized current time. The method 800 then terminates.

If, however, at step 808, the demand optimization engine 480 determines that the set-point power command 336 is not a command to charge the energy storage device 224, then the method 800 proceeds directly to step 812. At step 812, the demand optimization engine 480 compares the discharge power value specified by the set-point power command 336 to the power value included in the discharge guideline 442 and associated with the current time tick. If, at step 812, the demand optimization engine 480 determines that the magnitude (i.e., absolute value) of the power value specified by the set-point power command 336 is less than the magnitude of the power value included in the discharge guideline 442 and associated with the current time tick, then the method 800 proceeds to step 814. At step 814, the demand optimization engine 480 generates the demand-optimized power command 346 that specifies the power value included in the discharge guideline 442 and associated with the current time tick, and the method 800 terminates.

If, however, at step 812, the demand optimization engine 480 determines that the magnitude of the power value specified by the set-point power command 336 is greater than or equal to the magnitude of the power value included in the discharge guideline 442 and associated with the current time tick, then the method 800 proceeds directly to step 816. At step 816, the demand optimization engine 480 sets the demand-optimized power command 346 equal to the set-point power command 336, and the method 800 terminates.

If, however, at step 806, the demand optimization engine 480 determines that the current time tick is greater than the UMI midpoint 446 (i.e., the current time lies within the compensatory charge phase), then the method 800 proceeds directly to step 818. At step 818, the demand optimization engine 480 determines whether the set-point power command 336 is a command to charge the energy storage device 224. If, at step 818, the demand optimization engine 480 determines that the set-point power command 336 is not a command to charge the energy storage device 224, then the method proceeds to step 820. At step 820, the demand optimization engine 480 sets the demand-optimized power command 346 equal to the set-point power command 336, and the method 800 terminates. In this fashion, the demand optimization engine 480 ensures that if the set-point power command 336 attempts to supply power to offset the load 306 during the compensatory charge phase, then the set-point power command 336 is not altered by the demand optimization engine 480. For example, if the set-point power command 336 specifies a maximum power discharge to address the power limited event 650, then the demand optimization engine 480 relays the set-point power command 336 as the demand-optimized power command 346 irrespective of the charge guideline 448.

If, at step 818, the demand optimization engine 480 determines that the set-point power command 336 is a command to charge the energy storage device 224, then the method proceeds directly to step 822. At step 822, the demand optimization engine 480 compares the power value specified by the set-point power command 336 to the power value included in the charge guideline 448 and associated with the current time tick. If, at step 822, the demand optimization engine 480 determines that the power value specified by the set-point power command 336 is less than or equal to the power value included in the charge guideline 448 and associated with the current time tick, then the method 800 proceeds to step 824. At step 824, the demand optimization engine 480 sets the demand-optimized power command 346 equal to the set-point power command 336, and the method 800 terminates.

If, however, at step 822, the demand optimization engine 480 determines that the power value specified by the set-point power command 336 is greater than the power value included in the charge guideline 448 and associated with the current time tick, then the method 800 proceeds to step 826. At step 826, the demand optimization engine 480 generates the demand-optimized power command 346 that specifies the power value included in the charge guideline 448 and associated with the current time tick, and the method 800 terminates.

In sum, the disclosed techniques may be used to optimize the efficiency of an energy storage device across a utility measurement interval (UMI). An energy storage system includes the energy storage device, a power monitor that measures customer load, and a system controller that manages the transfer of power from the energy storage device and an electric grid managed by a utility company. The system controller includes a variety of software controlling elements that work together to discharge and charge the energy storage device in order to reduce the cost of purchasing energy from the electric grid. For example, a set-point controller and a run-time controller collaborate to generate set-point power commands that attempt to adjust the customer demand from the electric grid to an optimized set-point. An offset controller then adjusts these set-point power commands based on a variety of optimization criterion implemented within a semi-hierarchical system of plugs ins.

In particular, a hedge mode plugin included in the offset controller adjusts the set-point power commands based on a pre-discharge guideline and a compensatory charge guideline. The guidelines are a set of power values indexed by time ticks that, together, reduce the average customer demand from the electric grid over the UMI while maintaining a net zero state-of-charge for the energy storage device over the UMI. At the beginning of each UMI, the hedge mode plugin generates the discharge guideline for the first half of the UMI based on the amount of power allocated for UMI power management and the time duration of the UMI. During the first half of the UMI, the hedge mode plugin tracks the total power discharged from the energy storage device. At the beginning of the second half of the UMI, based on the total power discharged from the energy storage device, the hedge mode plugin generates a charge guideline for the second half of the UMI that ensures a net zero state-of-charge for the energy storage device over the UMI.

Throughout the UMI, a demand optimization engine included in the hedge mode plugin selectively adjusts the set-point power commands received from the run-time controller based on the discharge and charge guidelines to generate demand-optimized power commands. More specifically, during the first half of the UMI, if the set-point power command is a charge command, then the demand optimization engine generates a demand-optimized power command that specifies the power value included in the discharge guideline and associated with the current time tick. Similarly, if the set-point power command is a discharge command that specifies a power value that has a magnitude that is less than the magnitude of the power value included in the discharge guideline and associated with the current time tick, then the demand optimization engine generates a demand-optimized power command that specifies the power value included in the discharge guideline and associated with the current time tick. By contrast, if the set-point power command is a discharge command that specifies a power value that has a magnitude that is greater than or equal to the magnitude of the power value that is specified by the discharge guideline and associated with the current time tick, then the demand optimization engine does not adjust the set-point power command.

During the second half of the UMI, if the set-point power command is a charge command that specifies a power value that is greater than or equal to the power value included in the charge guideline and associated with the current time tick, then the demand optimization engine overrides the set-point power command. More specifically, the demand optimization engine generates a charge command that specifies the power value included in the charge guideline and associated with the current time tick. By contrast, if the set-point power command is a discharge command or a charge command that specifies a power value that is less than the power value included in the charge guideline and associated with the current time tick, then the demand optimization engine does not adjust the set-point power command.

Advantageously, the techniques described herein enable customers to optimize the efficiency of energy storage devices to reduce total energy costs. In particular, by preemptively discharging the energy storage device during the first half of a UMI, the hedge mode plugin enables the energy storage system to effectively mitigate a power limited event over the entire UMI irrespective of when the power limited event occurs. Accordingly, the efficiency of the energy storage device is optimized, the average customer demand from the utility company over the UMI is reduced, and the total energy cost is reduced. Further, because the hedge mode plugin re-charges the energy storage device during the compensatory charge phase, the hedge mode plugin restores the ability of the energy storage system to minimize the demand from the electric grid during future UMIs.

The descriptions of the various embodiments have been presented for purposes of illustration, but are not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments.

Aspects of the present embodiments may be embodied as a system, method or computer program product. Accordingly, aspects of the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “module” or “system.” Furthermore, aspects of the present disclosure may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.

Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.

Aspects of the present disclosure are described above with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the disclosure. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions/acts specified in the flowchart and/or block diagram block or blocks. Such processors may be, without limitation, general purpose processors, special-purpose processors, application-specific processors, or field-programmable

The flowchart and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.

While the preceding is directed to embodiments of the present disclosure, other and further embodiments of the disclosure may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow 

What is claimed is:
 1. A computer-implemented method of controlling discharge and charge cycles for an energy storage device, the method comprising: determining that a first time associated with a first command lies within a first phase of a utility measurement interval; producing a second command from at least the first command and a first discharge value associated with the first time, determining that the first command comprises a discharge command that specifies a second discharge value, comparing a magnitude of the second discharge value to a magnitude of the first discharge value, wherein: the first discharge value is included in a discharge guideline, the first discharge value is indexed by a first time tick that is included in a plurality of time ticks, and each time tick included in the plurality of time ticks comprises a predetermined unit of time, and if the magnitude of the second discharge value is greater than or equal to the magnitude of the first discharge value, then setting the second command equal to the first command, or if the magnitude of the second discharge value less than to the magnitude of the first discharge value, then generating the second command that specifies the first discharge value; transmitting, to a power controller, the second command in order to cause the energy storage device to discharge at the first discharge value at a time corresponding to the first time tick; determining that a second time associated with a third command lies within a second phase of the utility measurement interval; producing a fourth command from at least the third command and a first charge value associated with the second time, wherein the first charge value is included in a charge guideline; and transmitting, to the power controller, the fourth command in order to cause the energy storage device to charge.
 2. The method of claim 1, wherein at least one of the first command and the third command correlate to an electrical load.
 3. The method of claim 1, wherein producing the fourth command comprises determining that the third command comprises a discharge command, and setting the fourth command equal to the third command.
 4. The method of claim 1, wherein producing the fourth command comprises: determining that the third command comprises a charge command that specifies a second charge value; determining that a magnitude of the second charge value is less than a magnitude of the first charge value; and setting the fourth command equal to the third command.
 5. The method of claim 1, wherein producing the fourth command comprises: determining that the third command comprises a charge command that specifies a second charge value; determining that a magnitude of the second charge value is greater than or equal to a magnitude of the first charge value; and generating the fourth command that specifies the first charge value.
 6. One or more non-transitory computer-readable media storing program instructions that, when executed by one or more processors, cause the one or more processors to control discharge and charge cycles for an energy storage device by performing the steps of: determining that a first time associated with a first command lies within a first phase of a utility measurement interval; producing a second command from at least the first command and a first discharge value associated with the first time, wherein the first discharge value is included in a discharge guideline; transmitting, to a power controller, the second command in order to cause the energy storage device to discharge; determining that a second time associated with a third command lies within a second phase of the utility measurement interval; producing a fourth command from at least the third command and a first charge value associated with the second time, comprising: determining that the third command comprises a charge command that specifies a second charge value, comparing a magnitude of the second charge value to magnitude of the first charge value, wherein the first charge value is included in a charge guideline if the magnitude of the second charge value is less than the magnitude of the first charge value, then setting the fourth command equal to the third command, or if the magnitude of the second charge value is greater than or equal to the magnitude of the first charge value, then generating the fourth command that specifies the second charge value; and transmitting, to the power controller, the fourth command in order to cause the energy storage device to charge at the second charge value.
 7. The one or more non-transitory computer-readable media of claim 6, wherein at least one of the first command and the third command correlate to an electrical load.
 8. The one or more non-transitory computer-readable media of claim 6, wherein producing the second command comprises: determining that the first command comprises a charge command, and generating the second command that specifies the first discharge value.
 9. The one or more non-transitory computer-readable media of claim 6, wherein producing the second command comprises: determining that the first command comprises a discharge command that specifies a second discharge value; comparing a magnitude of the second discharge value to a magnitude of the first discharge value, wherein the first discharge value is indexed by a first time tick that is included in a plurality of time ticks, and wherein each time tick included in the plurality of time ticks comprises a predetermined unit of time; and if the magnitude of the second discharge value is greater than or equal to the magnitude of the first discharge value, then setting the second command equal to the first command; or if the magnitude of the second discharge value is less than the magnitude of the first discharge value, then generating the second command that specifies the first discharge value, wherein the second command causes the energy storage device to discharge at the first discharge value at a time corresponding to the first time tick.
 10. The one or more non-transitory computer-readable media of claim 6, wherein causing the energy storage device to discharge based on the second command comprises transmitting the second command to a system controller that controls the energy storage device.
 11. A system configured to control an energy storage device to manage power-limited events, the system comprising: a memory storing a hedge mode application; and a processor that is coupled to the memory and, executes the hedge mode application by: determining that a first time associated with a first command lies within a first phase of a utility measurement interval; producing a second command from at least the first command and a first discharge value associated with the first time, comprising: determining that the first command comprises a discharge command that specifies a second discharge value, comparing a magnitude of the second discharge value to a magnitude of the first discharge value, wherein: the first discharge value is included in a discharge guideline, the first discharge value is indexed by a first time tick that is included in a plurality of time ticks, and each time tick included in the plurality of time ticks comprises a predetermined unit of time, and if the magnitude of the second discharge value is greater than or equal to the magnitude of the first discharge value, then setting the second command equal to the first command, or if the magnitude of the second discharge value is less than the magnitude of the first discharge value, then generating the second command that specifies the first discharge value; transmitting, to a power controller, the second command in order to cause the energy storage device to discharge at the first discharge value at a time corresponding to the first time tick; determining that a second time associated with a third command lies within a second phase of the utility measurement interval; producing a fourth command from at least the third command and a first charge value associated with the second time, wherein the first charge value is included in a charge guideline; and transmitting, to the power controller, the fourth command in order to cause the energy storage device to charge.
 12. The system of claim 11, wherein at least one of the first command and the third command correlate to an electrical load.
 13. The system of claim 11, wherein herein the hedge mode application configures the processor to produce the fourth command by: determining that the third command comprises a charge command that specifies a second charge value; determining that the second charge value is greater than or equal to the first charge value; and generating the fourth command that specifies the second charge value.
 14. The system of claim 11, wherein the energy storage device comprises one or more battery appliances.
 15. The system of claim 11, wherein the hedge mode application configures the processor to produce the fourth command by determining that the third command comprises a discharge command, and setting the fourth command equal to the third command.
 16. The system of claim 11, wherein the hedge mode application configures the processor to produce the fourth command by: determining that the third command comprises a charge command that specifies a second charge value; determining that a magnitude of the second charge value is less than a magnitude of the first charge value; and setting the fourth command equal to the third command. 